package com.scpii.api.persistence.auth;

import org.apache.ibatis.annotations.Param;

import com.scpii.api.domain.auth.UsersInfoDetails;

public interface UsersInfoDetailsMapper {
	int deleteByPrimaryKey(Long id);

	int insert(UsersInfoDetails record);

	int insertSelective(UsersInfoDetails record);

	UsersInfoDetails selectByPrimaryKey(Long id);

	int updateByPrimaryKeySelective(UsersInfoDetails record);

	int updateByPrimaryKey(UsersInfoDetails record);

	UsersInfoDetails selectBySelective(UsersInfoDetails recordUsersInfoDetails);

	UsersInfoDetails loadUserInfoDetailsByUserNameAndLoginTypes(
			@Param("appId") Long appId, @Param("userName") String userName,
			@Param("loginTypes") String[] loginTypes);

	UsersInfoDetails loadThirdPartyUserInfoDetailsByUserNameAndLoginType(
			@Param("appId") Long appId, @Param("userName") String userName,
			@Param("loginType") String loginType);

	UsersInfoDetails loadAnonymousUsersInfoDetailsByDeviceId(
			@Param("appId") Long appId, @Param("deviceId") String deviceId);
}